package com.temp.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class Donation implements Serializable {

    /**
     * 捐赠ID（主键）
     */
    private Long id;

    /**
     * 捐赠用户ID（外键，匿名则为NULL）
     */
    private Long userId;

    /**
     * 关联活动ID（外键）
     */
    private Long campaignId;

    /**
     * 捐赠金额
     */
    private BigDecimal amount;

    /**
     * 货币类型（如USD/CNY）
     */
    private String currency;

    /**
     * 支付方式比如这里使用的是USDT支付
     */
    private String paymentMethod;

    /**
     * 是否匿名（0否/1是）
     */
    private Integer isAnonymous;

    /**
     * 捐赠凭证下载链接（支付平台返回）
     */
    private String receiptUrl;

    /**
     * 捐赠时间
     */
    private LocalDateTime createdAt;

    /**
     * 受益人
     */
    private Long beneficiaryId;
}
